Conversation
|
cc @Amanieu, @folkertdev, @sayantn
cc @rust-lang/rustfmt Some changes occurred to the intrinsics. Make sure the CTFE / Miri interpreter cc @rust-lang/miri, @RalfJung, @oli-obk, @lcnr
cc @rust-lang/miri
cc @bjorn3 |
|
|
This comment has been minimized.
This comment has been minimized.
f9baace to
bdc9dac
Compare
This comment has been minimized.
This comment has been minimized.
|
Ah yeah sorry! Trim on save got me of course. |
bdc9dac to
bfade6d
Compare
This comment has been minimized.
This comment has been minimized.
bfade6d to
4a133bf
Compare
|
I agree with the change but don't have time to review it, sorry. |
|
@rustbot ready |
|
@bors r+ rollup Strong agree that we should try to rename intrinsics to match their stable counterparts. It just is a lot of effort that many folks don't want to put in. Thanks for doing this. |
|
This pull request was unapproved. |
This comment has been minimized.
This comment has been minimized.
The semantics of `intrinsics::abort()` are closer to what we have unstably as `abort_immediate()` than to `process::abort()` or `libc::abort()`. Rename it to make more clear that the intrinsic is more of an intentional crash with platform-specific behavior than what `libc::abort()` tries to be (i.e. raising `SIGABRT`).
4a133bf to
e9b0eeb
Compare
|
This PR was rebased onto a different main commit. Here's a range-diff highlighting what actually changed. Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers. |
|
@bors r=clarfonthey |
…r=clarfonthey intrinsics: Rename `abort` to `abort_immediate` The semantics of `intrinsics::abort()` are closer to what we have unstably as `abort_immediate()` than to `process::abort()` or `libc::abort()`. Rename it to make more clear that the intrinsic is more of an intentional crash with platform-specific behavior than what `libc::abort()` tries to be (i.e. raising `SIGABRT`). If desired, a new intrinsic like `abort_gracefully` could be introduced that performs platform-specific behavior. This would more cleanly unblock rust-lang#149780. See also discussion at the tracking issue for `immediate_abort` rust-lang#154601.
…uwer Rollup of 9 pull requests Successful merges: - #163655 (explicitly handle tests that pass with -Znext-solver) - #159924 (Send -fno-lto when linker plugin LTO is not requested to avoid having GCC do LTO when using rustc_codegen_gcc) - #163572 (Update the minimum external LLVM to 22) - #129822 (Docs - type guarantees update) - #157973 (Distinguish `repr(C)` ZSTs from others in ABI compatibility rules) - #162332 (preserve overflow in builtin Field candidates) - #163574 (intrinsics: Rename `abort` to `abort_immediate`) - #163638 (avoid trivial `fn map_bound` validations) - #163660 (yeet compare-mode-coherence)
…uwer Rollup of 9 pull requests Successful merges: - #163655 (explicitly handle tests that pass with -Znext-solver) - #159924 (Send -fno-lto when linker plugin LTO is not requested to avoid having GCC do LTO when using rustc_codegen_gcc) - #163572 (Update the minimum external LLVM to 22) - #129822 (Docs - type guarantees update) - #157973 (Distinguish `repr(C)` ZSTs from others in ABI compatibility rules) - #162332 (preserve overflow in builtin Field candidates) - #163574 (intrinsics: Rename `abort` to `abort_immediate`) - #163638 (avoid trivial `fn map_bound` validations) - #163660 (yeet compare-mode-coherence)
View all comments
The semantics of
intrinsics::abort()are closer to what we have unstably asabort_immediate()than toprocess::abort()orlibc::abort(). Rename it to make more clear that the intrinsic is more of an intentional crash with platform-specific behavior than whatlibc::abort()tries to be (i.e. raisingSIGABRT).If desired, a new intrinsic like
abort_gracefullycould be introduced that performs platform-specific behavior. This would more cleanly unblock #149780.See also discussion at the tracking issue for
immediate_abort#154601.r? @RalfJung I suppose